package com.wanxi.web.service.enterprise;

import com.wanxi.enterprise.api.dto.EnterpriseUpdateInDTO;
import com.wanxi.enterprise.api.query.EnterpriseQuery;
import com.wanxi.enterprise.api.query.LocateApplyQuery;
import com.wanxi.enterprise.api.result.CommonResult;
import com.wanxi.enterprise.api.vo.EnterpriseAddInVo;
import com.wanxi.enterprise.api.vo.LocateApplyAddInVo;
import com.wanxi.enterprise.api.vo.LocateApplyAuditInVo;
import com.wanxi.enterprise.api.vo.NoLocateApplyInVO;

/**
 * ClassName: EnterpriseWebService
 * Description:
 * date: 2022/1/13 9:47
 *
 * @author lxl
 * @version 1.0
 * @since JDK 1.8
 */
public interface EnterpriseWebService {

    /**
     * @author jinfang
     * @Description //管理员查看商家基本信息（商家表+入驻资料表）

     **/
    CommonResult findAll(EnterpriseQuery enterpriseQuery);

    /**
     * @author jinfang
     * @Description //管理员查看商家入驻信息，方便审核

     **/
    CommonResult findApplyAll(LocateApplyQuery locateApplyQuery);

    /**
     * @Author jinfang
     * @Description // 管理员点击审核通过，并录入到入驻资料表
     *
     **/
    CommonResult updateApply(LocateApplyAuditInVo locateApplyAuditInVo);

    /**
     * @Author jinfang
     * @Description // 管理员点击审核驳回，并且通过邮箱方式返回驳回理由给商家
     * @Date  2022/1/13
     * @Params locateApplyAuditInVo
     * @return CommonResult
     **/
    CommonResult noApply(NoLocateApplyInVO noLocateApplyInVO);


    /**
     * @author jinfang
     * @description // 商家完善自己的商家信息（从游客角色转换为商家）
     * @date  2022/1/18
     * @params enterpriseAddInVo
     * @return CommonResult
     **/
    CommonResult addEnterprise(EnterpriseAddInVo enterpriseAddInVo);

    /**
     * @Author jinfang
     * @Description // 商家申请入驻，输入入驻资料，添加商家资料到入驻申请表

     **/
    CommonResult addApply(LocateApplyAddInVo locateApplyAddInVo);

    /**
     * @Author jinfang
     * @Description // 商家查看自己的入驻信息
     **/
    CommonResult findApplyDataById(Long id);

    /**
     * @Author jinfang
     * @Description // 商家根据id修改自己的信息
     **/
    CommonResult updateEnterpriseById(EnterpriseUpdateInDTO enterpriseUpdateInDTO);


}
